Reserve Array
题目
编写程序,将数据段里的某数组在原位置逆序(例如ARRAY数组 {1,2,3} 变为 {3,2,1} 但是首地址依旧是ARRAY). 要求用子程序实现逆序操作,子程序要求有一定通用性,能够处理不同的数组。
分析
思路非常简单,和高级程序写相同。使用”第三者”来做转换。但是由于 MOV 指令的特殊性,无法两个内存变量直接传值,因此使用 “第四者”。逆序操作:采用下标(地址)对比法,双指针。在.asm文件中,我用AX作为前指针(从0开始),CX作为尾指针(从数组底端开始) 然后采用比对方式来判断是否做完。
**注意:需要特判数组个数为1的情况和偶数数组**